Reliable data backup schemes are essential for individuals and corporations that create, transfer, access and share data. Redundant storage schemes are a commonly employed tool for data backup, and may include a process known as mirroring. This involves replicating a first logical storage volume to a second logical storage volume, either in real-time (synchronous) or intermittently (asynchronous). In a synchronous system, operations such as write operations are performed simultaneously to ensure that the two volumes are always consistent with each other. From the perspective of a client device accessing the storages, fetching data from the first storage or the second storage should produce an identical result.
Redundant Array of Independent Disks (RAID) technology is an example implementation of such redundancy. During a failure event, when one or more of the mirrored disks is down, a disk which is functioning provides client devices with access to the data stored thereon. When the failed disks recover, or otherwise a mirroring process is initiated, the entirety of one disk is copied to another. In other examples, the system may compare a block on a first volume with a block on a second volume to determine if they are mirrored. Each of these operations requires reading the block from the storage volumes, and utilizing a portion of available network bandwidth connecting the drives so that the block contents can be compared. This process may take a significant amount of time and bandwidth, both of which can be costly. Additionally, many system automatically access and compare section of a volume that are trimmed, or slated for erasure, devoting time and computing resources unnecessarily.
It would therefore be advantageous to provide a solution that would overcome the challenges noted above.